//Source file: D:\\test\\com\\ce\\pms\\system\\custservice\\service\\ICustEventKindService.java

package com.ce.pms.system.custservice.service;

import java.util.List;

import com.ce.pms.base.vo.SearchVO;
import com.ce.pms.system.custservice.vo.CustEventKindVO;
import com.sitechasia.webx.core.support.Page;

/**
 * 描述：服事件类型service
 * @author 王浩羽
 *
 */
public interface ICustEventKindService 
{
   
   /**
    * 检索客服事件类型
    * @param eventNatureId
    * @return List<CustServEventkindVO>
    * @roseuid 4939E39C009C
    */
   public List<CustEventKindVO> queryCustEventKind(Long eventNatureId);
   
   /**
    * 查询客服事件类型,带排序功能
    * @param currentPage
    * @param pageSize
    * @return
    */
   public Page queryCustEventKindListByPage(SearchVO searchVO);
   
   /**
    * 增加事件类型
    * 注：名称不能有重复
    * @param eventKindVO
    * @return
    */
   public boolean addCustEventKind(CustEventKindVO eventKindVO);
   
   /**
    * 修改客户事件类型
    * 注：用户可以对系统中的已有事件类型进行修改，如果事件类型被引用则事件类型名称是不允许修改的。
    * @param eventKindVO
    * @return
    */
   public boolean editCustEventKind(CustEventKindVO eventKindVO);
   
   /**
    * 删除客户事件类型
    * 对于无意义的数据，可以将其删除。但是，若事件类型已被引用则不允许删除。
    * @param eventKindId 客户事件类型ID
    * @return
    */
   public boolean deleteCustEventKindById(Long eventKindId);
   
   public CustEventKindVO findObjectVOById(Long id);
   
   /**
    * 功能描述:  检查名称是否已经存在，存在则抛出异常<br>
    * @param name
    * Create author: 王浩羽 <br>
    * Create on:Dec 25, 2008  <br>
    * Edit author:  <br>
    * Edit on:    <br>
    * Why:     <br>
    */
   public void checkExistenceByName(String name);
}
